package com.flyco.modules.stm.service;

import com.flyco.modules.pms.entity.PmsSkuStock;
import com.flyco.modules.stm.entity.StmStoreInfo;
import com.baomidou.mybatisplus.extension.service.IService;
import com.flyco.modules.system.model.SysDepartStoreModel;

import java.util.List;

/**
 * @Description: 门店
 * @Author: flyco
 * @Date: 2020-09-18
 * @Version: V1.0
 */
public interface IStmStoreInfoService extends IService<StmStoreInfo> {

    void generateSku(Long partnerId, Long storeId);

    void generateStoreStock(Long partnerId, Long storeId);

    Long getNextStoreId();

    void saveDepartStoreData(SysDepartStoreModel departStoreModel);

    Boolean editDepartStoreDataById(SysDepartStoreModel departStoreModel);

    List<StmStoreInfo> getStoreInfoList(List<Long> storeIds);

    /**
     * 查询门店的商品数量
     * 返回门店storeId和rowCount
     */
    List<PmsSkuStock> getStockProductCount();

    StmStoreInfo getByStoreId(Long storeId);

    List<StmStoreInfo> getStoreAndChannel();

    void sendMailForApprove(StmStoreInfo storeInfo);

    List<StmStoreInfo> queryStoreListAndOrderDistance();

    List<StmStoreInfo> getStoreList();

    List<StmStoreInfo> getStoreListByPartnerId(Long partnerId);

    //查询销售公司列表
    List<StmStoreInfo> getCompanyList();

    //根据名称查询经销商列表
    List<StmStoreInfo> getStoreListByName(String storeName, Long partnerId);

    //查询待禁用的经销商集合
    List<StmStoreInfo> getStoreInfoDisabledList();
}
